Image forming apparatus and method for increasing image resolution and magnification

ABSTRACT

An image forming apparatus includes: an acquiring unit; a resolution converting unit; a receiving unit; a position determining unit; a correcting unit; and a scaling unit. The acquiring unit acquires image data composed of a plurality of pixels; the scaling-factor determining unit determines a scaling factor of the acquired image data; the resolution converting unit converts a resolution of the acquired image data into a higher resolution than the resolution of the image data; the receiving unit receives a designation of a sub-scanning directional shift amount of a correction pixel to be corrected; a position determining unit performs a position determining process; and the scaling unit scales the image data at the determined scaling factor by causing the position determining unit and the correcting unit.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims priority to and incorporates by referencethe entire contents of Japanese Patent Application No. 2010-061672 filedin Japan on Mar. 17, 2010.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to image formation, and more particularly,to an image forming apparatus and an image forming method for forming alatent image with multiple beams.

2. Description of the Related Art

With the functional advancement of an image forming apparatus, the imageformation rate of the image forming apparatus per unit time, i.e., thenumber of prints per minute (PPM) increases. In recent years, to achieveformation of a higher-resolution image at a higher speed, an imageforming apparatus which performs multi-beam exposure using a verticalcavity surface emitting laser (hereinafter, referred to as a “VCSEL”)has been proposed. Furthermore, in response to a request for resourcesaving, a type of image forming apparatus capable of duplex printing hasbeen available.

Therefore, in an automatic duplex printing apparatus, with improvementin the PPM, a time interval between printing an image on the first sideof a sheet and printing an image on the second side tends to beshortened. For example, in high-speed types of duplex printingapparatuses, some apparatuses perform printing images on the first andsecond sides within 10 seconds.

When duplex printing is performed in such a state, in the case where an80-micrometer-thick high-quality sheet is used as a printing sheet, ithas been confirmed that a magnification difference of 0.2% to 0.4%between images printed on the first and second sides corresponding tothe front and back of the sheet occurs due to changes in heat andhumidity.

To cope with the above described problem, there has been conventionallydisclosed a method to provide a sub-scanning magnification changingfunction to an image forming apparatus to eliminate a magnificationdifference so that the image forming apparatus can reduce an image byculling sub-scanning image data or enlarge an image by adding image data(for example, Japanese Patent Application Laid-open No. 2009-83472).

However, in the method disclosed in Japanese Patent ApplicationLaid-open No. 2009-83472, it is impossible to resolve imagedeterioration caused in the image enlarging process. Specifically, thereis a problem that the higher the resolution of an image to be formed,such as an image having the periodicity, for example, that a I-line lineis formed every 5 lines, the more conspicuously a global image defect,such as uneven density or moiré, appears when a line is culled or addedto adjust the magnification.

Furthermore, with the process to eliminate a magnification difference,it is necessary to prevent banding caused by interference between ascreen ruling and a magnification ratio or the like.

SUMMARY OF THE INVENTION

It is an object of the present invention to at least partially solve theproblems in the conventional technology.

According to an aspect of the present invention, an image formingapparatus includes: an acquiring unit that acquires image data composedof a plurality of pixels; a scaling-factor determining unit thatdetermines a scaling factor of the acquired image data; a resolutionconverting unit that converts a resolution of the acquired image datainto a higher resolution than the resolution of the image data; areceiving unit that receives a designation of a sub-scanning directionalshift amount of a correction pixel to be corrected; a positiondetermining unit that performs a position determining process fordetermining a position of the correction pixel on the basis of the shiftamount of which the designation is received; a correcting unit thatperforms a correction process for correcting the pixel in the determinedposition; and a scaling unit that scales the image data at thedetermined scaling factor by causing the position determining unit andthe correcting unit to repeatedly perform the position determiningprocess and the correction process with respect to each of sub-scanninglines of pixels and then repeatedly perform the position determiningprocess and the correction process with respect to each of main-scanninglines of pixels.

According to another aspect of the present invention, an image formingmethod includes: acquiring image data composed of a plurality of pixels;determining a scaling factor of the acquired image data; converting aresolution of the acquired image data into a higher resolution than theresolution of the image data; receiving a designation of a sub-scanningdirectional shift amount of a correction pixel to be corrected;performing a position determining process for determining a position ofthe correction pixel on the basis of the shift amount of which thedesignation is received; performing a correction process for correctingthe pixel in the determined position; and scaling the image data at thedetermined scaling factor by repeatedly performing the positiondetermining process and the correction process with respect to each ofsub-scanning lines of pixels and then repeatedly performing the positiondetermining process and the correction process with respect to each ofmain-scanning lines of pixels.

According to still another aspect of the present invention, an imageforming means includes: an acquiring means for acquiring image datacomposed of a plurality of pixels; a scaling-factor determining meansfor determines a scaling factor of the acquired image data; a resolutionconverting means for converting a resolution of the acquired image datainto a higher resolution than the resolution of the image data; areceiving means for receiving a designation of a sub-scanningdirectional shift amount of a correction pixel to be corrected; aposition determining means for performing a position determining processfor determining a position of the correction pixel on the basis of theshift amount of which the designation is received; a correcting meansfor performing a correction process for correcting the pixel in thedetermined position; and a scaling means for scaling the image data atthe determined scaling factor by causing the position determining unitand the correcting unit to repeatedly perform the position determiningprocess and the correction process with respect to each of sub-scanninglines of pixels and then repeatedly perform the position determiningprocess and the correction process with respect to each of main-scanninglines of pixels.

The above and other objects, features, advantages and technical andindustrial significance of this invention will be better understood byreading the following detailed description of presently preferredembodiments of the invention, when considered in connection with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram illustrating a mechanical configuration ofan image forming apparatus according to a first embodiment;

FIG. 2 is a configuration diagram of a VCSEL 200 incorporated in anoptical device 102 according to the first embodiment;

FIG. 3 is a schematic perspective view illustrating a case where theoptical device 102 including the VCSEL 200 exposes a photosensitive drum104 a to a light beam;

FIG. 4 is a schematic functional block diagram of a control unit 300 ofthe present image forming apparatus 100;

FIG. 5 is a detailed functional block diagram of a GAVD 310;

FIG. 6 is a functional block diagram of an image processing unit 342;

FIG. 7 is a schematic diagram for explaining a resolution increasingprocess performed by a resolution converting unit 350;

FIG. 8A is an explanatory diagram illustrating operation of an imagepath selector 358;

FIG. 8B is another explanatory diagram illustrating the operation of theimage path selector 358;

FIG. 9 is a flowchart showing a procedure of the scaling processperformed by the image processing unit 342;

FIG. 10A is a diagram showing an example of a correction address whenB≧10 is set;

FIG. 10B is a diagram showing an example of a correction address whenB<0 is set;

FIG. 11 is a diagram showing an example of an original image;

FIG. 12A is a diagram showing an example of image data that pixels arethinned out by a scale-down process performed by a correcting unit 357;

FIG. 12B is a diagram showing another example of image data that pixelsare thinned out by a scale-down process performed by the correcting unit357;

FIG. 13A is a diagram showing an example of image data that pixels areadded by a scale-up process performed by the correcting unit 357;

FIG. 13B is a diagram showing another example of image data that pixelsare added by a scale-up process performed by the correcting unit 357;

FIG. 14A is a diagram showing an example of a correction address valuewhen values of rate and B are set so that rate is not dividable by B;

FIG. 14B is a diagram showing another example of a correction addressvalue when values of rate and B are set so that rate is not dividable byB;

FIG. 15 is a diagram showing an example of an original image;

FIG. 16A is a diagram showing an example of a correction address valuein image data;

FIG. 16B is a diagram showing another example of a correction addressvalue in image data;

FIG. 17A is a diagram showing image data that correction pixels shown inFIG. 16A are thinned out;

FIG. 17B is a diagram showing image data that correction pixels shown inFIG. 16B are thinned out;

FIG. 18A is a diagram showing an example of image data that image dataof the original image shown in FIG. 15 is scaled up by insertion of apixel bit;

FIG. 18B is a diagram showing another example of image data that imagedata of the original image shown in FIG. 15 is scaled up by insertion ofa pixel bit;

FIG. 19 is a diagram showing an example of a set-value table in which aset value of a shift amount B is associated with a dither screen angle;and

FIG. 20 is a block diagram illustrating a hardware configuration of theimage forming apparatus 100 according to first to third embodiments.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Exemplary embodiments of an image forming apparatus and an image formingmethod according to the present invention are explained in detail belowwith reference to the accompanying drawings. In the embodimentsdescribed below, there is shown an example in which the apparatusaccording to the present invention is applied to a multifunctionperipheral (MFP) having at least two of a copy function, a printerfunction, a scanner function, and a facsimile function; however, thepresent invention is not limited to the above described example.

First Embodiment

FIG. 1 is a schematic diagram illustrating a mechanical configuration ofan image forming apparatus according to a first embodiment. As shown inFIG. 1, an image forming apparatus 100 according to the first embodimentmainly includes: an optical device 102 including optical elements suchas a VCSEL 200 (see FIGS. 2 and 3) and a polygon mirror 102 a; an imageforming unit 112 including photosensitive drums charging devices,developing devices, and the like; and a transfer unit 122 including anintermediate transfer belt and the like. The optical device 102 includesthe VCSEL 200 as a semiconductor laser. As shown in FIG. 1, light beamsemitted from the VCSEL 200 (not shown in FIG. 1) are first collected bya first cylindrical lens (not shown), and deflected to a reflectionmirrors 102 b by the polygon mirror 102 a.

The VCSEL 200 here is a surface-emitting semiconductor laser in which aplurality of light sources (semiconductor lasers) is arranged on thesame chip in a lattice pattern. Various technologies for an imageforming apparatus using such a VCSEL 200 are known; the optical device102 of the image forming apparatus 100 according to the first embodimentincorporates the VCSEL 200 in a configuration similar to those of thepublicly-known technologies. FIG. 2 is a configuration diagram of theVCSEL 200 incorporated in the optical device 102 according to the firstembodiment. The VCSEL 200 according to the first embodiment is, as shownin FIG. 2, composed of a semiconductor laser array that a plurality oflight sources 1001 (a plurality of semiconductor lasers) is arranged ina lattice pattern. The VCSEL 200 is installed so that an array directionof the plurality of light sources 1001 is tilted at a predeterminedangle θ to a rotating shaft of the polygon mirror 102 a provided as adeflector.

In FIG. 2, vertical arrays of the light sources are denoted by a to c,and lateral arrays are denoted by 1 to 4; for example, the top-leftlight source 1001 in FIG. 2 is denoted by a1. Since the light sources1001 are obliquely arranged at a polygon mirror angle θ with respect toa sub-scanning direction, it is assumed that the light source a1 and thelight source a2 expose different scanning positions to light, and apixel (one pixel) is constructed by this two light sources, i.e., inFIG. 2, one pixel is achieved by two light sources. For example, when itis assumed that one pixel is constructed by the two light sources a1 anda2 and another one pixel is constructed by the two light sources a3 anda4, pixels as illustrated on the extreme right in FIG. 2 are formed bythe light sources in the drawing. When the vertical direction in thedrawing is set as the sub-scanning direction, a center-to-centerdistance between adjacent pixels each constructed by two light sourcesis equivalent to 600 dpi. At this time, a center-to-center distancebetween the two light sources constructing one pixel is equivalent to1200 dpi, and the light-source density is twice as much as the pixeldensity. Therefore, by changing a light quantity ratio of light sourcesconstructing one pixel, the position of the gravity center of the pixelcan be displaced in the sub-scanning direction, and it is possible toachieve high-precision image formation.

The image forming apparatus 100 includes the post-object type opticaldevice 102 which does not use an f-theta lens. In the embodiment shownin FIG. 1, light beams L respectively corresponding to cyan (C), magenta(M), yellow (Y), and black (K) image data are emitted, and reflected bythe reflection mirrors 102 b, and then again collected by secondcylindrical lenses 102 c, and after that, photosensitive drums 104 a,106 a, 108 a, and 110 a are exposed to the light beams L, respectively.

Since the exposure of the light beams L is performed with use of aplurality of optical elements as described above, as for a main scanningdirection and the sub-scanning direction, timing synchronization isperformed. Incidentally, hereinafter, the main scanning direction isdefined as a scanning direction of the light beams, and the sub-scanningdirection is defined as a direction perpendicular to the main scanningdirection.

Each of the photosensitive drums 104 a, 106 a, 108 a, and 110 a includesa photoconductive layer including at least a charge generation layer anda charge transport layer on a conductive drum made of aluminum or thelike. The photoconductive layers are provided to correspond to thephotosensitive drums 104 a, 106 a, 108 a, and 110 a, and applied withsurface charges by charger units 104 b, 106 b, 108 b, and 110 b eachincluding a corotron, a scorotron, or a charging roller, respectively.

Static charges applied to the photosensitive drums 104 a, 106 a, 108 a,and 110 a by the respective charger units 104 b, 106 b, 108 b, and 110 bare exposed to the light beams L, and electrostatic latent images areformed. The electrostatic latent images formed on the photosensitivedrums 104 a, 106 a, 108 a, and 110 a are developed by developing units104 c, 106 c, 108 c, and 110 c each including a developing sleeve, adeveloper supply roller, a control blade, and the like, respectively,and developer images are formed.

The developer images formed on the photosensitive drums 104 a, 106 a,108 a, and 110 a are transferred onto an intermediate transfer belt 114,which moves in a direction of an arrow A in accordance with rotation ofconveying rollers 114 a, 114 b, and 114 c, in a superimposed manner. Thesuperimposed C, M, Y, and K developer images (hereinafter, referred toas a “multicolor developer image”) transferred onto the intermediatetransfer belt 114 are conveyed to a secondary transfer unit inaccordance with the movement of the intermediate transfer belt 114. Thesecondary transfer unit includes a secondary transfer belt 118 andconveying rollers 118 a and 118 b. The secondary transfer belt 118 movesin a direction of an arrow B in accordance with rotation of theconveying rollers 118 a and 118 b. An image receiving medium 124, suchas high-quality paper or a plastic sheet, is fed from animage-receiving-media containing unit 128, such as a paper cassette, tothe secondary transfer unit by a conveying roller 126.

The secondary transfer unit applies a secondary bias to the intermediatetransfer belt 114, whereby the multicolor developer image on theintermediate transfer belt 114 is transferred onto the image receivingmedium 124 attracted and held on the secondary transfer belt 118. Theimage receiving medium 124 is supplied to a fixing unit 120 inaccordance with the movement of the secondary transfer belt 118. Thefixing unit 120 includes a fixing member 130, such as a fixing rollermade of silicon rubber or fluorine-contained rubber, and applies heatand pressure to the image receiving medium 124 and the multicolordeveloper image, and outputs the image receiving medium 124 as a printedmaterial 132 to outside the image forming apparatus 100. After themulticolor developer image on the intermediate transfer belt 114 istransferred onto the image receiving medium 124, a cleaning unit 116including a cleaning blade removes transfer residual developers from theintermediate transfer belt 114 to make ready for a next image formingprocess.

FIG. 3 is a schematic perspective view illustrating a case where theoptical device 102 including the VCSEL 200 exposes the photosensitivedrum 104 a to a light beam L. The light beam L emitted from the VCSEL200 is collected by a first cylindrical lens 202 used to shape a lightbeam flux, and goes through a reflection mirror 204 and an imaging lens206, and then is deflected by the polygon mirror 102 a. The polygonmirror 102 a is driven to rotate by, for example, a spindle motor whichspins several thousand times to tens of thousands times. After the lightbeam L reflected by the polygon mirror 102 a is reflected by thereflection mirror 102 b, the light beam L is again shaped by the secondcylindrical lens 102 c, and the photosensitive drum 104 a is exposed tothe light beam L.

Furthermore, to synchronize a start timing of scanning in thesub-scanning direction by the light beam L, a reflection mirror 208 isarranged. The reflection mirror 208 reflects the light beam L to asynchronization detection device 210 including a photodiode and the likebefore the scanning in the sub-scanning direction is started. Whendetecting the light beam, the synchronization detection device 210generates a synchronization signal to start sub-scanning, andsynchronizes a process, such as a process of generating a drive controlsignal to the VCSEL 200.

The VCSEL 200 is driven by a pulse signal sent from a GAVD 310 to bedescribed later, and as described later, the position on thephotosensitive drum 104 a corresponding to a predetermined image bit ofimage data is exposed to a light beam L emitted from the VCSEL 200, andan electrostatic latent image is formed on the photosensitive drum 104a.

FIG. 4 is a schematic functional block diagram of a control unit 300 ofthe image forming apparatus 100. The control unit 300 includes a scannerunit 302, a printer unit 308, and a main control unit 330. The scannerunit 302 functions as a means for reading an image, and includes a VPU304 and an IPU 306. The VPU 304 converts an analog signal read by ascanner into a digital signal, and performs a black offset correction, ashading correction, and a pixel location correction. The IPU 306performs image processing mainly for converting the acquired image inthe RGB color system into digital image data in the CMYK color system.The read image acquired by the scanner unit 302 is output as digitaldata to the printer unit 308. Here, the scanner unit 302 acquires imagedata of the front and back of an original, and stores digital data ofthe first side corresponding to the front of the original and digitaldata of the second side corresponding to the back of the original in amemory 340.

The printer unit 308 includes the GAVD 310, an LD driver 312, and theVCSEL 200. The GAVD 310 functions as a control means for performing thedrive control of the VCSEL 200. The LD driver 312 supplies a current fordriving a semiconductor laser element to the semiconductor laser elementin response to a drive control signal generated by the GAVD 310. TheVCSEL 200 mounts thereon two-dimensionally-arranged semiconductor laserelements. The GAVD 310 according to the first embodiment executes aresolution increasing process on image data transmitted from the scannerunit 302 by dividing pixel data in a size corresponding to the spatialsize of the semiconductor laser elements of the VCSEL 200.

The scanner unit 302 and the printer unit 308 are connected to the maincontrol unit 330 via a system bus 316, and image reading and imageformation are controlled by a command from the main control unit 330.The main control unit 330 includes a central processing unit (CPU) 320and a RAM 322. The RAM 322 provides a processing space used by the CPU320 to process image data. Any CPUs that have been known can be used asthe CPU 320; for example, a CISC (Complex Instruction Set Computer),such as the PENTIUM (registered trademark) series and aPENTIUM-compatible CPU, a RISC (Reduced Instruction Set Computer), suchas the MIPS, and the like can be used. The CPU 320 receives aninstruction from a user via an interface 328, and calls a program modulefor executing a process corresponding to the instruction to execute theprocess, such as copy, facsimile, scan, or image storage. The maincontrol unit 330 further includes a ROM 324, and stores default settingdata of the CPU 320, control data, a program, and the like in the ROM324 so that the CPU 320 can use them. An image storage 326 is configuredas a fixed or removable memory device, such as a hard disk device, an SDcard, and a USB memory, and stores therein image data acquired by theimage forming apparatus 100 so that the image data can be used forvarious processes instructed by a user.

When an image of image data acquired by the scanner unit 302 is outputas an electrostatic latent image onto the photosensitive drum 104 a orthe like by driving the printer unit 308, the CPU 320 executes themain-scanning direction control and the sub-scanning position control ofan image receiving medium, such as high-quality paper or a plastic film.To start scanning in the sub-scanning direction, the CPU 320 outputs astart signal to the GAVD 310. When the GAVD 310 receives the startsignal, an IPU 306 starts a scanning process. After that, the GAVD 310receives image data stored in a buffer memory or the like, and processesthe received image data, and then outputs the processed image data tothe LD driver 312. When receiving the image data from the GAVD 310, theLD driver 312 generates a drive control signal of the VCSEL 200. Afterthat, the LD driver 312 sends the drive control signal to the VCSEL 200,thereby lighting up the VCSEL 200. Incidentally, the LD driver 312drives the semiconductor laser elements by the use of the PWM control orthe like. The VCSEL 200 described in the first embodiment includes eightchannels of semiconductor laser elements; however, the number ofchannels of the VCSEL 200 is not limited to eight.

FIG. 5 is a detailed functional block diagram of the GAVD 310. The GAVD310 receives a synchronization signal, and includes a memory 340 such asa FIFO buffer for storing and memorizing image data sent from the IPU306, and passes the image data sent from the IPU 306 to an imageprocessing unit 342 in a first-in first-out method. The image processingunit 342 reads out the image data from the memory 340, and executes aresolution conversion of the image data, assignment of the channel ofthe semiconductor laser element, and a process of adding/deleting animage bit (i.e., a correction pixel for scaling the image data up ordown) (i.e., a correction process of the image data). The position onthe photosensitive drum 104 a exposed to a light beam corresponding tothe image data is defined by a main-scanning line address value defininga line address value in the main-scanning direction and a sub-scanningline address value defining a line address value in the sub-scanningdirection. Hereinafter, in the first embodiment, address coordinates aredefined as a set of address values to which a specific image bit isgiven when image data is specified by a main-scanning line address value(an R address value) and a sub-scanning line address value (an F addressvalue). Incidentally, as will be described below, these address valuesare determined by an address generating unit 354. Furthermore, addresscoordinates are set by each row of pixels aligned in each main-scanningline and each sub-scanning line. An image path selector 358 to bedescribed below performs a correction process, such as insertion of animage bit, with respect to a pixel located at an address of coordinatesspecified by an R address value and an F address value which isdetermined by the address generating unit 354 to be described below(i.e., at a pixel position) by each row of pixels.

An output-data control unit 344 converts output data, which is a writesignal corresponding to the image data generated by the image processingunit 342, into a time-series drive pulse on the basis of the F addressvalue and the sub-scanning speed, and generates a synchronizationcontrol signal for giving a synchronization signal to a synchronizationdetection device 210, and adds the generated synchronization controlsignal to the drive pulse. The generated drive control signal istransmitted to the LD driver 312, and the VCSEL (not shown) is driven.Furthermore, the output-data control unit 344 receives a synchronizationsignal from the synchronization detection device 210, and synchronizesthe transmission of the drive control signal to the LD driver 312.Incidentally, processes of the memory 340, the image processing unit342, and the output-data control unit 344 are synchronized with anoperation clock from a PLL 346.

FIG. 6 is a functional block diagram of an image processing unit 342according to the first embodiment. As shown in FIG. 6, the imageprocessing unit 342 mainly includes a resolution converting unit 350 anda sub-scanning scaling control unit 352.

The resolution converting unit 350 creates divided pixels by dividing aunit pixel of image data acquired from the memory 340 in thecorresponding size and number of channels of the VCSEL 200. After that,the resolution converting unit 350 assigns the channels of the laserelements, which emit laser beams to respective pixels, to the dividedpixels. Furthermore, in the case of increasing the resolution, theresolution converting unit 350 selects a 2n-fold density process (n is apositive integer) or a 2n-line process, and determines the assignment ofthe channel of the laser element to be driven. In this case, theresolution converting unit 350 determines synchronous writing of a1200-dpi input image for a plurality of lines by the eight channels ofthe VCSEL at an output resolution of 4800 dpi.

A resolution converting unit 350 converts input image data (hereinafter,referred to as “input data”) into image data of a higher resolution(hereinafter, referred to as an “output resolution”) than a resolution(hereinafter, referred to as an “input resolution”) of an input image.FIG. 7 is a schematic diagram for explaining the resolution increasingprocess performed by the resolution converting unit 350. As shown inFIG. 7, the resolution converting unit 350 converts input data D0 [1:0]illustrated on the left side of the diagram into output data Dc0 [3:0]to Dc3 [3:0] illustrated on the right side of the diagram depending onthe density of the input data. In this case, the resolution convertingunit 350 converts the input data D0 [1:0] having an input resolution of1200 dpi into the output data Dc0 [3:0] to Dc3 [3:0] having an outputresolution of 4800 dpi. The resolution converting unit 350 processesother input data D1 [1:0] to D5 [1:0] in the same manner as the inputdata D0 [1:0]. For example, the resolution converting unit 350 convertsthe input data D1 [1:0] into output data Dc4 [3:0] to Dc7 [3:0].

The sub-scanning scaling control unit 352 mainly includes ascaling-factor determining unit 353, a position determining unit 354, areceiving unit 355, a memory 356, a correcting unit 357, and an imagepath selector 358.

The scaling-factor determining unit 353 obtains a scaling factor offirst-side image data at the time of image processing of image data ofthe first side of a double-sided original, and determines a scalingfactor of second-side image data on the basis of the obtained scalingfactor of the first-side image data. Incidentally, a value of adifference between the scaling factor of the first-side image data andthe scaling factor of the second-side image data determined by thescaling-factor determining unit 353 is minute. For example, when an80-micrometer-thick high-quality sheet is used as a printing sheet, asdescribed above, there occurs a magnification difference of 0.2% to 0.4%between images printed on the first and second sides of the printingsheet due to variations in heat and humidity. To eliminate themagnification difference, a different scaling factor from that of thefirst side is set. Furthermore, the scaling factor may be arbitrarilyset.

The receiving unit 355 receives a designation of a shift amount, andstores the designated shift amount in the memory 356. The shift amounthere means an amount of shift of a correction pixel to be corrected tothe sub-scanning direction. For example, the receiving unit 355 receivesinput of a value of a shift amount from a user (a system engineer, etc.)via the interface 328. Incidentally, depending on data of a ditheringprocess performed on image data, the user designates a value which doesnot interfere with a dither screen angle as a shift amount.

The image path selector 358 controls the position determining unit 354and the correcting unit 357 so as to scale the image data up or down onthe basis of the shift amount stored in the memory 356. Here, it isassumed that a scaling factor of the image data is the same value as thescaling factor determined by the scaling-factor determining unit 353.Incidentally, the image path selector 358 can scale image data of eitherone of the both sides of a double-sided original in a sub-scanningprocess. For example, there are a case where image data of the firstside is scaled up and image data of the second side is not scaled, acase where image data of the first side is not scaled in thesub-scanning direction and image data of the second side is scaled down,a case where image data of the first side is scaled up and image data ofthe second side is scaled down, and the like.

The position determining unit 354 determines an address value of acorrection pixel (hereinafter, referred to as a “correction addressvalue”). The correction address value here means a set of anX-coordinate (hereinafter, referred to as an “R address value”) and aY-coordinate (hereinafter, referred to as an “F address value”)indicating a position of image data to which an image bit is added orfrom which an image bit is deleted in an image scale-up process.Furthermore, the position determining unit 354 redetermines the positionof a correction pixel on the basis of the shift amount received by thereceiving unit 355.

The correcting unit 357 performs a correction by adding or deleting animage bit to/from a correction pixel corresponding to the correctionaddress value determined by the position determining unit 354.

The image path selector 358 scales image data converted by theresolution converting unit 350 up or down. Specifically, the image pathselector 358 obtains the determined correction address value from theposition determining unit 354. Furthermore, the image path selector 358determines whether an address value of a pixel to be processed includesthe correction address value. For example, when an address value of apixel to be processed includes the correction address value, the imagepath selector 358 generates a scale command signal, such as an add flagor a delete flag, and passes the generated scale command signal to thememory 356.

When the image path selector 358 determines that an address value of apixel to be processed includes the correction address value, i.e., whena scale command signal is set, the image path selector 358 scales imagedata of the second side up or down on the basis of the shift amountreceived by the receiving unit 355.

On the other hand, when the image path selector 358 determines that anaddress value of a pixel to be processed does not include the correctionaddress value, i.e., when a scale command signal is not set, the imagepath selector 358 selects input data from the resolution converting unit350 on the basis of the shift amount obtained from the memory 356, andoutputs the selected input data. Incidentally, in the first embodiment,when the 8-channel VCSEL 200 is used as a semiconductor laser, signalseach indicating a position where an image bit is to be added or deletedand signals each indicating a shift amount are assigned to the eightchannels (ch0 to ch7), respectively, and are used to drive the VCSEL200. Incidentally, an appropriate operating part of the image processingunit 342 can be configured as a dedicated module for performing animage-bit adding/deleting process, or a part of another module can beconfigured to perform the image-bit adding/deleting process.Incidentally, the reason why it is configured to count the number ofscale command signals is, when an image bit is shifted, to identify, forexample, a position to which an image bit is first added in the secondscanning after an image bit is added in the first scanning.

The memory 356 stores therein a shift amount of an image bit, and countsand holds the number of scale command signals used in a scaling processperformed by the image path selector 358. Furthermore, the memory 356holds a shift amount.

Subsequently, operation of the image path selector 358 will beexplained. FIGS. 8A and 8B are explanatory diagrams illustrating theoperation of the image path selector 358. Attention data 602 shown inFIGS. 8A and 8B indicates a bit value for one pixel, and the data for1-pixel is represented in Y-coordinates for the eight channels. Theattention data 602 is bit data assigned to a specific main-scanningcoordinate position. As input data 600, the attention data 602 andscaling data for specifying a unit of shift for sub-scanning scaling areconstantly read out from the memory 340 on the preceding stage, andafter the same process is performed on all the lines, the data is inputto the resolution converting unit 350. In FIG. 8A, a scale commandsignal is not set, i.e., a scaling process is not performed, so a shiftamount obtained from the memory 356 is zero (shift=0), and asillustrated in FIG. 8A, image data of the attention data 602 is passedas output data 604 which is a write signal in this embodiment.

Subsequently, the operation when a scale command signal is set isexplained with reference to FIG. 8B. FIG. 8B illustrates a case where awhite pixel is added to a Y-coordinate 1 of the attention data 602 inthe first scanning (A). A signal indicating addition of an image bit isset with an address value corresponding to ch1, and bit data of ch1 isreplaced so as to correspond to a white pixel and set as data in ch1 ofoutput data 606. Then, a count value of 1 corresponding to the additionto ch1 is registered in the memory 356.

Data of ch2 to ch7 is each shifted to a Y-coordinate value by a channelshift amount of −1 as a value of a Y-coordinate of the output data 606.At this time, the image path selector 358 allocates bit data of thechannel of the attention data corresponding to the channel shift amountof −1 to ch2 to ch7 of the output data 606, thereby adding an image bit.An image bit corresponding to white is added to the attention data inthe output data 606, and the output data 606 is used as a write signal.The output-data control unit 344 converts the write signal in timeseries and generates a drive pulse for driving the VCSEL 200, and imageformation is performed. The process described above is performed on amain-scanning basis, and data on the next pixel in the main-scanningdirection is sequentially read out from the memory 340, and imageformation in the main-scanning direction is performed.

As described above, in the first scanning (A), the Y-coordinate valuesof ch1 to ch7 of the output data 606 are shifted due to the addition ofthe white pixel; so in the second scanning (B), as shown in FIG. 8B,even when a white pixel is not added, Y-coordinate values of ch8 to ch15of the output data 606 are shifted by −1; furthermore, in the thirdscanning (C), when a white pixel is added in the same manner as in thefirst scanning, as illustrated in FIG. 8B, sub-coordinate values of ch16to ch23 of the output data 606 are shifted by −2.

Subsequently, a scaling process performed by the image processing unit342 configured as described above will be explained. FIG. 9 is aflowchart showing a procedure of the scaling process performed by theimage processing unit 342.

The resolution converting unit 350 acquires image data from the memory340 (Step S1). The resolution converting unit 350 converts the acquiredimage data into image data having a higher resolution than that of theacquired image data (Step S2). The scaling-factor determining unit 353determines a scaling factor of the image data converted by theresolution converting unit 350 (Step S3). At this time, the scalingfactor is determined on the basis of a scaling factor of the first side.The receiving unit 355 receives input of a shift amount B (Step S4). Theposition determining unit 354 determines a correction address value onthe basis of the input shift amount B (Step S5). Specifically, theposition determining unit 354 calculates a correction address value by acalculus equation described below. The correcting unit 357 deletes orinserts a pixel bit from/into the correction address determined by theposition determining unit 354 (Step S6). The image path selector 358scales the image data at the scaling factor determined at Step S3 (StepS7).

Subsequently, the calculus equation used by the position determiningunit 354 to determine the correction address value will be explained.When a correction address is denoted by (p, q); a cycle of amain-scanning process is denoted by S; and a shift amount in thesub-scanning direction is denoted by B, a Y-coordinate of a correctionaddress (p+1, Y) of the closest row p+1 to the correction address (p, q)is determined by the following equation (1).Y=q+B  (1)FIGS. 10A and 10B are diagrams that illustrate examples of thecorrection address. In FIG. 10A, it is assumed that B=4 and S=5 are set.First, a Y-coordinate of a correction address (1, Y) of the closest rowp+1 to a correction address (0, 0) is 4 from the equation (1).

Furthermore, a pixel at (p+S, q), the same Y-coordinate as thecorrection address (p, q), is a correction pixel, and a scaling factor“rate” is calculated by the following equation (2).(S×B)=rate  (2)Namely, “rate” is a value that is divisible by B. In FIG. 10A, rate=20is obtained by the equation (2).

Then, a Y-coordinate of a correction address is calculated as follows.Here, it is assumed that a correction address of image data convertedinto a higher resolution is (p, Y), and a scaling factor of the imagedata is 1/rate. The shift amount B may be a positive value or a negativevalue. For example, in the case of B≧0, a Y-coordinate of a correctionaddress is calculated by the following equations (3) to (5).Incidentally, “int” denotes a symbol of operation for obtaining anintegral quotient; “%” denotes a symbol of operation for obtaining aremainder; “Z” denotes an arbitrary integer. A value of Z may be apredetermined value, or may be changed via the operation unit.t1=B×{(p+Z) % S}  (3)t2=int(Y/rate)×rate  (4)Y=t1+t2  (5)Incidentally, FIG. 10A illustrates an example of the correction addresswhen B≧0 is set.

Furthermore, in the case of B<0, a Y-coordinate of a correction addressis calculated by the following equations (6) to (8).t1=rate+B×{(p % Z)+1}  (6)t2=int(Y/rate)×rate  (7)Y=t1+t2  (8)Incidentally, FIG. 10B shows an example of the correction address whenB<0 is set.

Subsequently, an example where pixels are thinned out by a scale-downprocess performed by the image path selector 358 is explained. FIG. 11is a diagram showing an example of an original image. FIGS. 12A and 12Bare diagrams showing examples of image data that pixels are thinned outby a scale-down process performed by the correcting unit 357. Forexample, when the image path selector 358 sets a screen angle and anangle of a sub-scanning scaling process to the same angle, the imagedensity increases, and pixels become isolated dots as shown in FIG. 12A,and such isolated dots are periodically produced, resulting in banding.On the other hand, as in FIG. 12B, by setting to B<0 and changing thesub-scanning scaling angle, the appearance of banding can be reduced.

As described above, by changing a value of a shift amount B as in FIGS.12A and 12B, a correction address value can be made symmetric, andinterference with a dither screen angle can be prevented.

Subsequently, an example where pixels are added by a scale-up processperformed by the image path selector 358 will be explained. FIGS. 13Aand 13B are diagrams showing examples of image data in which pixels areadded by a scale-up process performed by the correcting unit 357. InFIG. 13A, when the scale-up process is performed, an array of pixelsthat include two adjacent pixels aligned in the main-scanning directionas shown in the upper three round frames in the diagram and an array ofpixels that include no such adjacent pixels aligned in the main-scanningdirection as shown in the lower two round frames in the diagram areperiodically produced, and this gives the appearance of banding. On theother hand, as in FIG. 13B, by setting to B<0, two adjacent pixelsaligned in the main-scanning direction are not produced, and the unevendensity resulting in banding becomes lessened.

In this manner, according to the first embodiment, a shift amount B isset with taking a dither screen angle into consideration in both ascale-down process and a scale-up process; therefore, it is possible toprevent interference with a dither screen angle and also possible toreduce the appearance of banding.

Second Embodiment

In the first embodiment, it is configured that a shift amount B can bearbitrarily set with taking a dither screen angle into consideration.Also in a second embodiment, a shift amount is set with taking a ditherscreen angle into consideration, and in addition, a shift amount B isset such that rate/B is an indivisible number. Furthermore, an offset isfurther taken into consideration to ensure avoidance of interferencewith a dither screen angle more certainly. The offset here means anarbitrarily-set fixed value.

The position determining unit 354 according to the second embodimentwill be explained below. Incidentally, the units other than the positiondetermining unit 354 have the same function and configuration as thosein the first embodiment.

A calculus equation used by the position determining unit 354 todetermine a Y-coordinate of a correction address is explained. Thecalculus equation is B×S≠rate, and B is a number that is not dividableby rate. The shift amount B may be a positive value or a negative value.For example, a Y-coordinate of a correction address is calculated by thefollowing equations (9) to (11).t1=offset+(B×p) % rate  (9)t2=int(Y/rate)×rate  (10)Y=t1+t2  (11)

Here, a correction address value when value of rate/B is set so thatrate is not dividable by B is compared with a correction address valuewhen a value of rate/B is set so that rate is dividable by B. Forexample, the example in FIG. 10A shows an address value when B=4 andrate=20, which means rate is dividable by B, and offset=0 are set. Inthis case, S=5 is obtained, which means a correction pixel appears atintervals of 5 pixels in the main-scanning direction.

On the other hand, FIG. 14A is a diagram showing an example of acorrection address value when a value of rate/B is set so that rate isnot dividable by B. For example, FIG. 14A shows a correction addressvalue when B=4 and rate=23, which means rate is not dividable by B, andoffset=0 are set. Namely, a repetitive cycle of correction pixels in themain-scanning direction is S=23, and an angle of a correction addressvalue can be changed flexibly. Therefore, it is possible to reduce theadverse effect due to interference with a dither screen angle.

FIG. 14B is a diagram showing another example of a correction addressvalue when a value of rate/B is set so that rate is not dividable by Bin the same manner as in FIG. 14A. In FIG. 14A, offset=0 is set, and theimage path selector 358 starts the process from a pixel at (0, 0). InFIG. 14B, offset=4 is set, and the image path selector 358 starts theprocess from a pixel at (0, 4) where an offset is shifted by 4 in thesub-scanning direction. In this manner, by shifting a coordinate whereto start the process, interference with a dither screen angle can beavoided more certainly.

Subsequently, image data processed on the basis of a set shift amount Bis explained with reference to FIGS. 15, 16A, and 16B. FIG. 15 is adiagram showing an example of an original image. In FIG. 15, ablack-colored pixel denotes a black pixel (4′b1111), a white-coloredpixel denotes a white pixel (4′b0000), and a pixel marked withdiagonally left-down lines denotes a halftone pixel (4′b0110).

Subsequently, image data obtained by performing a correction of ascale-down process to the original image will be explained. First, FIGS.16A and 16B are diagrams showing examples of a correction address valuein the image data. FIG. 16A shows a correction address value whenrate=20 and B=4 are set. FIG. 16B shows a correction address value whenrate=20 and B=3 are set. Furthermore, in the same manner as in FIG. 15,a black-colored pixel denotes a black pixel (4′b1111), a white-coloredpixel denotes a white pixel (4′b0000), a pixel marked with diagonallyleft-down lines denotes a halftone pixel (4′b0110), and a pixel markedwith diagonally right-down lines denotes a correction pixel.

As shown in a portion circled with a round frame in FIG. 16A, the imagepath selector 358 performs a thinning process intensively on halftonepixels marked with diagonally left-down lines. FIG. 17A is a diagramshowing image data that correction pixels shown in FIG. 16A, i.e.,correction pixels when rate/B is a dividable value are thinned out. FIG.17B is a diagram showing image data that correction pixels shown in FIG.16B, i.e., correction pixels when rate/B is not a dividable value arethinned out. In a case where correction pixels when rate=20 and B=4 areset as shown in FIG. 17A are thinned out from the original image shownin FIG. 15, as shown in a portion circled with a round frame in FIG.17A, the pixel thinning process is intensively performed on halftonepixels marked with diagonally left-down lines. As a result, an edgewhich looks like a lateral line is periodically produced, resulting inbanding. On the other hand, in FIG. 17B, unlike the portion circled withthe round frame in FIG. 17A, halftone pixels marked with diagonallyleft-down lines are not intensively thinned out, and the appearance ofbanding can be reduced.

Namely, in the examples of the image data shown in FIGS. 16A and 16B,there are four adjacent halftone pixels (4′b0110) aligned in thesub-scanning direction and eight adjacent black pixels (4′b1111) alignedin the sub-scanning direction. Furthermore, when a mass of the blackpixels (4′b1111) is thinned out, the density is reduced by one-eighth ofthe density; on the other hand, when a mass of the halftone pixels(4′b0110) is thinned out, the density is reduced by one-quarter of thedensity, and a difference in density between the pixels included in theround frame and the pixels outside the round frame is produced, andbanding appears on the image. However, by setting a value of rate/B sothat rate is not dividable by B as in FIG. 17B, frequency of thinninglow-density pixels of the original image can be reduced, and theappearance of banding can be reduced.

Subsequently, image data obtained by performing a correction of ascale-up process to the original image will be explained. FIGS. 18A and18B are diagrams showing examples of image data that the image data ofthe original image shown in FIG. 15 is scale up by insertion of a pixelbit. FIG. 18A is the diagram showing image data into which thecorrection pixels shown in FIG. 16A, i.e., the correction pixels whenrate/B is a dividable value are inserted. FIG. 18B is the diagramshowing image data into which the correction pixels shown in FIG. 16B,i.e., the correction pixels when rate/B is not a dividable value areinserted. In FIG. 18A, a value of rate/B is set to be dividable, so alsoin the scale-up process, in the same manner as in the scale-downprocess, five continuous halftone pixels aligned in the main-scanningdirection are produced by the scale-up process as shown in a portioncircled with a round frame, and a difference in density among thehalftone pixels is produced, a lateral line is produced.

On the other hand, in FIG. 18B, a value of rate/B is set to beindivisible. Therefore, five continuous halftone pixels aligned in themain-scanning direction are not produced, so no lateral line isproduced, and the appearance of banding can be reduced.

In this manner, according to the second embodiment, a shift amount B isset such that rate/B is an indivisible number; therefore, a correctionaddress that does not interfere with a dither screen angle can bedetermined, and as a result, the appearance of banding can be reduced.

Furthermore, in this manner, according to the second embodiment, a shiftamount B is set using an offset; therefore, a correction address thatdoes not interfere with a dither screen angle can be determined moreflexibly.

Third Embodiment

In the first embodiment, the image path selector 358 arbitrarily sets ashift amount B. On the other hand, in a third embodiment, the image pathselector 358 sets a shift amount B on the basis of a set-value table inwhich a set value of the shift amount B is preliminarily defined.

The memory 356 stores therein the set-value table. The set-value tablehere means a table in which a shift amount B is associated withpredetermined data. The predetermined data includes data for eachcolorplate, dithering data, and the like. Incidentally, the units of theimage processing unit 342 other than the memory 356 have the samefunction and configuration as those in the first embodiment.

FIG. 19 is a diagram showing an example of the set-value table in whicha set value of a shift amount B is associated with a dither screenangle. In the set-value table shown in FIG. 19, a shift amount B withrespect to a scaling factor of a line screen is associated with a ditherscreen angle. The image path selector 358 determines an offset and ashift amount B in the sub-scanning direction on the basis of a scalingfactor 1/rate and a screen angle.

The memory 356 can store therein a set-value table for each dithershape. Incidentally, it can be configured that a screen angle, halftonedots, a line screen, and the like are changed by each color in a printmode, such as a photo mode or a text mode, via the operation unit (theinterface 328) of the MFP or the like.

Furthermore, as another example, the receiving unit 355 receives aninstruction to change an offset, a cycle S of the scaling process, and ashift amount B of set-value data stored in the memory 356. The receivingunit 355 receives an instruction to change these values from a user (asystem engineer) via the operation unit (the interface 328).

In this manner, according to the third embodiment, set-value data ispreliminarily stored in the memory 356; therefore, the image pathselector can set a shift amount easily.

Furthermore, in this manner, according to the third embodiment,preliminarily-stored set values can be changed; therefore, theappearance of banding can be further reduced depending on image data.

FIG. 20 is a block diagram illustrating a hardware configuration of theimage forming apparatus 100 according to the first to third embodiments.As shown in FIG. 20, the image forming apparatus 100 (hereinafter,referred to as the “MFP 100”) includes a controller 10 and an engineunit 60. The controller 10 and the engine unit 60 are connected by a PCI(Peripheral Component Interface) bus. The controller 10 is a controllerwhich controls the entire MFP 100 and controls drawing, communications,and input from the operation unit (not shown). The engine unit 60 is aprinter engine which can be connected to the PCI bus, etc. For example,the engine unit 60 is a black-and-white plotter, a 1-drum color plotter,a 4-drum color plotter, a scanner, a fax unit, or the like.Incidentally, the engine unit 60 includes an image processing sectionfor performing error diffusion, gamma conversion, or the like on animage in addition to the so-called engine section, such as a plotter.

The controller 10 includes a CPU 11, a North Bridge (NB) 13, a systemmemory (MEM-P) 12, a South Bridge (SB) 14, a local memory (MEM-C) 17, anASIC (Application Specific Integrated Circuit) 16, and a hard disk drive(HDD) 18. The NB 13 and the ASIC 16 are connected by an AGP (AcceleratedGraphics Port) bus 15. The MEM-P 12 includes a ROM (Read Only Memory) 12a and a RAM (Random Access Memory) 12 b.

The CPU 11 controls the entire MFP 100, and has a chipset composed ofthe NB 13, the MEM-P 12, and the SB 14. The CPU 11 is connected to otherdevices via the chipset.

The NB 13 is a bridge for connecting the CPU 11 to the MEM-P 12, the SB14, and the AGP bus 15, and includes a memory controller for controllingread/write with respect to the MEM-P 12 and the like, a PCI master, andan AGP target.

The MEM-P 12 is a system memory used as a memory for storing a programor data, a memory for unpacking the program or data, a memory fordrawing by a printer, and the like, and is composed of the ROM 12 a andthe RAM 12 b. The ROM 12 a is a read only memory used as a memory forstoring a program or data. The RAM 12 b is a read-write memory used as amemory for unpacking the program or data, a memory for drawing by aprinter, and the like.

The SB 14 is a bridge for connecting the NB 13 to a PCI device and aperipheral device. The SB 14 is connected to the NB 13 via the PCI bus,and, for example, a network interface (I/F) is connected to the PCI bus.A network interface (I/F) unit and the like are connected to the PCIbus.

The ASIC 16 is an image processing IC (Integrated Circuit) includinghardware components for image processing. The ASIC 16 serves as a bridgefor connecting the AGP bus 15, the PCI bus, the HDD 18, and the MEM-C17. The ASIC 16 is composed of a PCI target, an AGP master, an arbiter(ARB) which is the core of the ASIC 16, a memory controller forcontrolling the MEM-C 17, a plurality of DMACs (Direct Memory AccessControllers) for performing rotation of image data or the like by ahardware logic, and a PCI unit for performing data transfer between thecontroller 10 and the engine unit 60 via the PCI bus. An FCU (FacsimileControl Unit) 30, a USB (Universal Serial Bus) 40, and an IEEE 1394 (theInstitute of Electrical and Electronics Engineers 1394) interface 50 areconnected to the ASIC 16 via the PCI bus. An operation display unit 20is directly connected to the ASIC 16.

The MEM-C 17 is a local memory used as a copy image buffer and a codebuffer. The HDD 18 is a storage for storing therein image data, aprogram, font data, and a form.

The AGP bus 15 is a bus interface for a graphic accelerator cardproposed to speed up a graphics operation, and accelerates the graphicaccelerator card by directly accessing the MEM-P 12 at high throughput.

According to the present invention, it is possible to achieve formationof a high-resolution image at high speed even in duplex printing withoutcausing global image deterioration and also possible to prevent theappearance of banding.

Although the invention has been described with respect to specificembodiments for a complete and clear disclosure, the appended claims arenot to be thus limited but are to be construed as embodying allmodifications and alternative constructions that may occur to oneskilled in the art that fairly fall within the basic teaching herein setforth.

What is claimed is:
 1. An image forming apparatus comprising: a memory;a scanning unit that acquires image data composed of a plurality ofpixels; a scaling-factor determining unit that determines a scalingfactor of the acquired image data; a resolution converting unit thatconverts a resolution of the acquired image data into a higherresolution than the resolution of the image data; a receiving unit thatreceives a designation of a sub-scanning directional shift amount of acorrection pixel to be corrected; a position determining unit thatperforms a position determining process for determining a position ofthe correction pixel on the basis of the shift amount of which thedesignation is received; a correcting unit that performs a correctionprocess for correcting the pixel in the determined position; and ascaling unit that scales the image data at the determined scaling factorby causing the position determining unit and the correcting unit torepeatedly perform the position determining process and the correctionprocess with respect to each of sub-scanning lines of pixels and thenrepeatedly perform the position determining process and the correctionprocess with respect to each of main-scanning lines of pixels, whereinthe position determining unit calculates a value of Y in coordinates (p,Y) indicating the position of the correction pixel by equations (1) to(3) if B≧0 or equations (4) to (6) if B<0, provided that “p” denotes amain-scanning line address value, “Z” denotes an arbitrary integer,“int” denotes a symbol of operation for obtaining an integral quotient,“%” denotes a symbol of operation for obtaining a remainder, “S” denotesa cycle of a main-scanning process, “B” denotes the shift amount, andrate=S×B:t1=B×{(p+Z) % S}  (1)t2=int(Y/rate)×rate  (2)Y=t1+t2  (3)t1=rate+B×{(p+Z) % S}  (4)t2=int(Y/rate)×rate  (5)Y=t1+t2  (6).
 2. An image forming apparatus comprising: a memory; ascanning unit that acquires image data composed of a plurality ofpixels; a scaling-factor determining unit that determines a scalingfactor of the acquired image data; a resolution converting unit thatconverts a resolution of the acquired image data into a higherresolution than the resolution of the image data; a receiving unit thatreceives a designation of a sub-scanning directional shift amount of acorrection pixel to be corrected; a position determining unit thatperforms a position determining process for determining a position ofthe correction pixel on the basis of the shift amount of which thedesignation is received; a correcting unit that performs a correctionprocess for correcting the pixel in the determined position; and ascaling unit that scales the image data at the determined scaling factorby causing the position determining unit and the correcting unit torepeatedly perform the position determining process and the correctionprocess with respect to each of sub-scanning lines of pixels and thenrepeatedly perform the position determining process and the correctionprocess with respect to each of main-scanning lines of pixels, whereinthe position determining unit calculates a value of Y in coordinates (p,Y) indicating the position of the correction pixel by equations (7) and(8), provided that “p” denotes a main-scanning line address value, “int”denotes a symbol of operation for obtaining an integral quotient, “%”denotes a symbol of operation for obtaining a remainder, “S” denotes acycle of a main-scanning process, “B” denotes the shift amount,rate=S×B, and “offset” is a fixed value:t1=offset+(B×p) % rate  (7)t2=int(Y/rate)×rate  (8)Y=t1+t2  (6).
 3. An image forming apparatus comprising: a memory; ascanning unit that acquires image data composed of a plurality ofpixels; a scaling-factor determining unit that determines a scalingfactor of the acquired image data; a resolution converting unit thatconverts a resolution of the acquired image data into a higherresolution than the resolution of the image data; a receiving unit thatreceives a designation of a sub-scanning directional shift amount of acorrection pixel to be corrected; a position determining unit thatperforms a position determining process for determining a position ofthe correction pixel on the basis of the shift amount of which thedesignation is received; a correcting unit that performs a correctionprocess for correcting the pixel in the determined position; a scalingunit that scales the image data at the determined scaling factor bycausing the position determining unit and the correcting unit torepeatedly perform the position determining process and the correctionprocess with respect to each of sub-scanning lines of pixels and thenrepeatedly perform the position determining process and the correctionprocess with respect to each of main-scanning lines of pixels; and astorage unit that stores therein a set-value table in which a set valueof the shift amount is associated with predetermined data, wherein thereceiving unit receives a shift amount corresponding to a value of thedata from the set-value table.
 4. The image forming apparatus accordingto claim 3, wherein the predetermined data is a dither screen angle. 5.The image forming apparatus according to claim 4, wherein the receivingunit receives an instruction to change the set value included in theset-value table, and stores the received instruction in the set-valuetable, and the scaling unit scales the image data on the basis of theset-value table in which the set value is changed.
 6. An image formingmethod comprising: acquiring image data composed of a plurality ofpixels; determining a scaling factor of the acquired image data;converting a resolution of the acquired image data into a higherresolution than the resolution of the image data; receiving adesignation of a sub-scanning directional shift amount of a correctionpixel to be corrected; performing a position determining process fordetermining a position of the correction pixel on the basis of the shiftamount of which the designation is received; performing a correctionprocess for correcting the pixel in the determined position; and scalingthe image data at the determined scaling factor by repeatedly performingthe position determining process and the correction process with respectto each of sub-scanning lines of pixels and then repeatedly performingthe position determining process and the correction process with respectto each of main-scanning lines of pixels, wherein the positiondetermining process includes calculating a value of Y in coordinates (p,Y) indicating the position of the correction pixel by equations (1) to(3) if B≧0 or equations (4) to (6) if B<0, provided that “p” denotes amain-scanning line address value, “Z” denotes an arbitrary integer,“int” denotes a symbol of operation for obtaining an integral quotient,“%” denotes a symbol of operation for obtaining a remainder, “S” denotesa cycle of a main-scanning process, “B” denotes the shift amount, andrate=S×B:t1=B×{(p+Z) % S}  (1)t2=int(Y/rate)×rate  (2)Y=t1+t2  (3)t1=rate+B×{(p+Z) % S}  (4)t2=int(Y/rate)×rate  (5)Y=t1+t2  (6).
 7. An image forming apparatus comprising: a memory; ascanning unit that acquires image data composed of a plurality ofpixels; a scaling-factor determining means for determining a scalingfactor of the acquired image data; a resolution converting means forconverting a resolution of the acquired image data into a higherresolution than the resolution of the image data; a receiving means forreceiving a designation of a sub-scanning directional shift amount of acorrection pixel to be corrected; a position determining means forperforming a position determining process for determining a position ofthe correction pixel on the basis of the shift amount of which thedesignation is received; a correcting means for performing a correctionprocess for correcting the pixel in the determined position; and ascaling means for scaling the image data at the determined scalingfactor by causing the position determining unit and the correcting unitto repeatedly perform the position determining process and thecorrection process with respect to each of sub-scanning lines of pixelsand then repeatedly perform the position determining process and thecorrection process with respect to each of main-scanning lines ofpixels, wherein the position determining means calculates a value of Yin coordinates (p, Y) indicating the position of the correction pixel byequations (1) to (3) if B≧0 or equations (4) to (6) if B<0, providedthat “p” denotes a main-scanning line address value, “Z” denotes anarbitrary integer, “int” denotes a symbol of operation for obtaining anintegral quotient, “%” denotes a symbol of operation for obtaining aremainder, “S” denotes a cycle of a main-scanning process, “B” denotesthe shift amount, and rate=S×B:t1=B×{(p+Z) % S}  (1)t2=int(Y/rate)×rate  (2)Y=t1+t2  (3)t1=rate+B×{(p+Z) % S}  (4)t2=int(Y/rate)×rate  (5)Y=t1+t2  (6).